/****************************************************************************
 **
 ** Trolltech hereby grants a license to use the Qt/Eclipse Integration
 ** plug-in (the software contained herein), in binary form, solely for the
 ** purpose of creating code to be used with Trolltech's Qt software.
 **
 ** Qt Designer is licensed under the terms of the GNU General Public
 ** License versions 2.0 and 3.0 ("GPL License"). Trolltech offers users the
 ** right to use certain no GPL licensed software under the terms of its GPL
 ** Exception version 1.2 (http://trolltech.com/products/qt/gplexception).
 **
 ** THIS SOFTWARE IS PROVIDED BY TROLLTECH AND ITS CONTRIBUTORS (IF ANY) "AS
 ** IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED
 ** TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A
 ** PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER
 ** OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
 ** EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
 ** PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR
 ** PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF
 ** LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING
 ** NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
 ** SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE."
 **
 ** Since we now have the GPL exception I think that the "special exception
 ** is no longer needed. The license text proposed above (other than the
 ** special exception portion of it) is the BSD license and we have added
 ** the BSD license as a permissible license under the exception.
 **
 ****************************************************************************/

#ifndef QTAVKONVIEW_H
#define QTAVKONVIEW_H


#include <QtGui/QMainWindow>
#include <QtGui>
#include <QCheckBox>
#include <QListWidget>
#include <QSlider>
#include<QObject>
#include "QBaseWidget.h"
#include "SlidingStackedWidget.h"


class QTAvkonView : public QMainWindow
	{
Q_OBJECT

public:
//! The Constructor and Destructor
	QTAvkonView(QWidget *parent = 0);
	~QTAvkonView();
	/*
	 * creates basic widgets which are present on the  slide.
	 */
	void createGuiControlComponents();
	void createSubSlidingWidgets();
	void createSlidingStackedWidget();
	void createMainLayout();
	void createConnections();
	/*
	 * ! The Animation / Page Change API
	 * moved to next slide
	 */
	void SlideNext();
	/*
	 * sliding to previous slide.
	 */
	void SlidePrv();
	/*
	 * the setVertical sets animation direction 
	 */
	void setVertical(bool);
	/*
	 * return the animation direction 
	 * i.e  vertical or horizontal by returning boolan variable 
	 * m_vartical.
	 */
	bool getVertical();
	QPushButton *buttonNext;
	QPushButton *buttonPrev;
	QCheckBox *checkWrap;
	QCheckBox *checkVertical;
	QSlider *slideSpeed;
	QComboBox *listAll;
	QLabel *speedLabel;
	QLCDNumber *speedDisplay;

	int animTime;
	QVBoxLayout *mainLayout;
	QGridLayout *controlPaneLayout;
	SlidingStackedWidget *slidingStacked;

	QMyWidget3* slideWidget1;
	QMyWidget4* slideWidget2;
	QMyWidget5* slideWidget3;
	QMyWidget6* slideWidget4;

private:
	SlidingStackedWidget* m_slidingwidget;
	QWidget *centralWidget;

	};

#endif // QTAVKONVIEW_H
